package com.example.yin.service;

import com.example.yin.domain.Comment;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface CommentService {

    /*usr module*/
    boolean addComment(Comment comment);//添加评论
    boolean updateComment(Comment comment);//更新评论内容
    boolean deleteComment(Integer id);//根据id删除评论
    List<Comment> selectCommentByUserId(Integer userId);//查看某一用户所有评论
    List<Comment> selectCommentBySongId(Integer songId);//查看某一歌曲所有评论
    List<Comment> selectApprovedCommentBySongid(Integer songId);//查看某一歌曲所有评论
    boolean giveLikes(Integer id);//点赞
    boolean cancelLikes(Integer id);//取消赞

    /*admin module*/

    List<Comment> allComment();//获得所有评论列表
    List<Comment> commentOfSongId(Integer songId);//获得指定歌曲ID的评论列表
    boolean adminDeleteComment(@Param("id")Integer id);//管理员删除评论，改变评论状态
    boolean auditComment(@Param("id")Integer id,@Param("state")Integer state);//审核评论

//    List<Comment> commentOfSongListId(Integer songListId);//获得指定歌单ID的评论列表

}
